package model.stages;

import java.awt.Rectangle;
import java.util.ArrayList;
import java.util.List;

import model.ModelComponent;
import model.characters.CharacterInterface;
import model.components.ButtonComponent;
import model.input.KeyboardHandler;
import model.input.MenuMouseHandler;
import model.input.MouseHandler;

public class MainMenuModel implements StageModel {
	
	MouseHandler mouseHandler;
	
	private List<ModelComponent> modelComponents;
	
	private StageEnum stage = StageEnum.MAIN_MENU;
	
	public MainMenuModel(){
		
		modelComponents = new ArrayList<ModelComponent>();
		modelComponents.add(new ButtonComponent(new Rectangle(50,300,180,35),StageEnum.PHASE_1));
		modelComponents.add(new ButtonComponent(new Rectangle(50,350,180,35),StageEnum.OPTIONS));
		modelComponents.add(new ButtonComponent(new Rectangle(50,400,180,35),StageEnum.ABOUT));
		
		mouseHandler = new MenuMouseHandler();
		mouseHandler.setComponents(modelComponents);
	}

	@Override
	public StageEnum getStage() {
		return stage;
	}

	public void setStage(StageEnum stage) {
		this.stage = stage;
	}

	public MouseHandler getMouseHandler() {
		return mouseHandler;
	}

	@Override
	public KeyboardHandler getKeyboardHandler() {
		return null;
	}


	@Override
	public void update() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public List<ModelComponent> getModelComponents() {
		return modelComponents;
	}

	@Override
	public int getStageSize() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public CharacterInterface getPlayer() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public List<CharacterInterface> getCharacters() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public boolean isGameOver() {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public void setGameOver(boolean gameOver) {
		// TODO Auto-generated method stub
		
	}

}
